#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
AI营销方案生成系统 - 规则模板路由
功能：处理规则模板相关的API请求
作者：AI营销系统开发团队
创建时间：2024
"""

from flask import Blueprint, jsonify
from typing import Dict, Any, List
import logging

from services.template_service import TemplateService
from utils.response_helper import success_response, error_response

# 创建蓝图
template_bp = Blueprint('templates', __name__)

# 初始化服务
template_service = TemplateService()


@template_bp.route('/templates', methods=['GET'])
def get_templates():
    """
    获取所有规则模板列表
    
    Returns:
        JSON: 模板列表响应
    """
    try:
        templates = template_service.get_all_templates()
        
        return success_response(
            data={
                'templates': templates
            },
            message='获取模板列表成功'
        )
        
    except Exception as e:
        logging.error(f"获取模板列表失败: {str(e)}")
        return error_response(
            message='获取模板列表失败',
            error=str(e)
        )


@template_bp.route('/templates/<template_id>', methods=['GET'])
def get_template_by_id(template_id: str):
    """
    根据ID获取特定规则模板
    
    Args:
        template_id: 模板ID
        
    Returns:
        JSON: 模板详情响应
    """
    try:
        template = template_service.get_template_by_id(template_id)
        
        if not template:
            return error_response(
                message='模板不存在',
                status_code=404
            )
        
        return success_response(
            data={
                'template': template
            },
            message='获取模板详情成功'
        )
        
    except Exception as e:
        logging.error(f"获取模板详情失败: {str(e)}")
        return error_response(
            message='获取模板详情失败',
            error=str(e)
        )